<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<script>
  async function timeout() {
    return 'hello world'
  }

  /**
   * 原来async 函数返回的是一个promise 对象，如果要获取到promise 返回值，
   * 我们应该用then 方法， 继续修改代码
   */
  timeout().then(res => {
    console.log(res);
  });
  console.log('虽然在后面，但是我先执行');
</script>

<script>
  async function timeout2(flag) {
    if (flag) {
      return 'hello world'
    } else {
      throw 'my god, failure'
    }
  }
  //console.log(timeout2(true))  // 调用Promise.resolve() 返回promise 对象。
  //console.log(timeout2(false)); // 调用Promise.reject() 返回promise 对象。
  timeout2(true).then(res=>{
    console.log(res);
  }).catch(err=>{
    throw new Error(err);
  })
</script>
</body>
</html>